#ifndef CNETMGR_HPP
#define CNETMGR_HPP
#include <string>
#include <sys/socket.h>


namespace SVR{ namespace YJ {

enum
{
     TCP_TYPE,
	 UDP_TYPE,
	 ICMP
};

class CNetMgr
{
    public:
	CNetMgr();
	CNetMgr(char* addr, int port);
	CNetMgr(std::string addr, int port);
	bool setTCP();
	bool setUDP();
	bool setICMP();
	bool Init();
	int acceptEndPonit();
    bool shutDown();
	char* revcData();
	int sendData();
	bool setSockOpt(int flag);
	int getSockOpt();
	
	private:
	int m_serFd;
	int m_cliFd;
	char* m_addr;
	int m_port;
	int m_mode;
	struct address_in m_serAddr;
	
};

}}


#endif